1. Field of the Invention
The present invention relates to a navigation apparatus that indicates and displays the current location and the driving direction of a moving vehicle, to help in driving the moving vehicle, and, more particularly, to a navigation apparatus capable of offset processing operations, equipped with an angular velocity sensor such as a gyro and compensates for the angular velocity output.
2. Description of Background Information
A navigation apparatus that is to be installed in a vehicle or the like, due to its nature, should accurately measure the location and driving direction of the vehicle, and properly and promptly display map information corresponding to the vehicle's location or the current position, as well as a mark representing the vehicle's location and a mark representing the driving direction or other information associated with a request from the user as needed, to present the information to the driver.
The location and driving direction of a vehicle are generally measured by two ways: by calculation based on radio waves received from a GPS (Global Positioning System) satellite (hereinafter called "GPS measuring") and by calculation based on the detection outputs from sensors, such as a direction sensor, e.g., an angular velocity sensor such as a gyro, a geomagnetic sensor, and a running sensor for detecting the running status (hereinafter called "independent measuring"). The GPS measuring is very effective means because it has a lot of advantages; for example, it does not require to set the location of a vehicle on a map in advance, and has a considerably small error in measuring the position, thus ensuring high reliability.
However, the GPS measuring has a shortcoming that the position measuring is not possible at locations surrounded by buildings, in tunnels and behind woods and forests. The independent measuring does not always provide accurate detection data because it is liable to the influence of accumulative error or a temperature change, and the conditions inside and outside the vehicle. Particularly, the geomagnetic sensor is easily affected on iron bridges. In this respect, neither position measuring is perfect. Therefore, at present, the GPS measuring and independent measuring are used in combination to compensate for each other's shortcomings to improve the precision.
An angular velocity sensor, such as a gyro, conventionally used in the independent measuring changes its output with a variation in temperature and humidity. Since the angular velocity of a stopped vehicle should be "0" in normal running, naturally, the output value in this state is treated as an offset value or a reference value and, thereafter, the true angular velocity compensation for an output variation is produced by subtracting the offset value from the output value. This calculation will be hereinafter referred to as "offset reset".
FIG. 1 shows a flowchart of a conventional process of detecting the angular velocity. This process is performed when the angular velocity is regularly acquired from an angular velocity sensor such as a gyro to detect the driving direction. Referring to this flowchart, the conventional angular velocity detection process will be described in detail. The angular velocity .omega. output from the angular velocity sensor as well as the output of a running sensor which outputs a velocity pulse when the vehicle is running are acquired, and it is then determined based on those outputs if the vehicle is not moving (steps S51 to S53). When the vehicle is at a stop, it is determined if the rate of change in angular velocity .omega. or the angular acceleration d.omega./dt is within a predetermined value k (step S54). When the angular acceleration d.omega./dt is within a predetermined value k, the angular velocity .omega. currently acquired is considered as an offset value .omega..sub.0 (step S55). This offset value .omega..sub.0 is subjected to an offset processing or offset reset given in the subsequent step S56, and the angular velocity (.omega.'=.omega.-.omega..sub.0) after the compensation becomes equal to "0". On the other hand, when the vehicle is running and the angular acceleration d.omega./dt exceeds the predetermined value k, the process goes to step S56 without updating the offset value .omega..sub.0, and the offset process is performed with the previously determined offset value to provide the compensated angular velocity .omega.'.
The offset reset in the offset process will be expressed by the following equations:
Given that
.omega..sub.T : true angular velocity, PA0 .omega.: output of the angular velocity sensor, PA0 .omega..sub.off : offset value, and PA0 .omega..sub.stop : output of the angular velocity sensor when the vehicle is stationary PA0 G: gyro gain, PA0 J.sub.i : gyro data and PA0 J.sub.ofs : gyro offset value, ##EQU1## PA0 .DELTA..theta.a.sub.n : relative gyro direction, PA0 .theta.a.sub.n : gyro direction, PA0 .theta.o.sub.n-1 : previous absolute direction, and PA0 gk: gyro gain correction coefficient (fixed to 1), the gyro direction .theta.a.sub.n is ##EQU2##
As EQU .omega.=.omega..sub.T +.omega..sub.off, EQU .omega..sub.T =.omega.-.omega..sub.off (A)
Because .omega.T=0 should be met when the vehicle is stationary, EQU .omega..sub.stop =.omega..sub.T +.omega..sub.off =.omega.off
and substituting this into the equation (A) yields EQU .omega..sub.T =.omega.-.omega..sub.stop
Thus, the true angular velocity is acquired by subtracting the output value for the stopped vehicle from the angular velocity output from the angular velocity sensor, conventionally.
Meantime, the gyro detects the angular velocity according to a change in driving direction. A change-computed angle per unit output (hereinafter called "gyro gain") is obtained in advance, and a driving direction change is computed from the gyro data output from the gyro using that gyro gain. The gyro gain is determined from the following equation (1) based on the gyro data that is accumulated while the vehicle turns 360.degree. when correcting the turn.
Given that
The direction computed using this gyro gain G (hereinafter called "gyro direction") has been obtained from the following equation.
Given that
In this equation the gyro offset J.sub.ofs is reset, at appropriate timings, by using as an offset value the gyro data detected when no change in driving direction occurs as in the case where the vehicle is not moving. The previous absolute direction .theta.o.sub.n-1 is the gyro direction previously acquired, and the relative gyro direction .DELTA..theta.a.sub.n is a newly obtained angle of direction change.
In the above-described conventional offset reset process, however, when a vehicle runs on an ordinary road, the vehicle frequently stops by a signal or the like and the offset reset is performed at every occasion of stopping, so that the true angular velocity is acquired with a considerably small error. When the vehicle runs for a long period of time without stopping as on an expressway, however, the offset value is not obtained naturally. In this case, the offset value is likely to vary during that period due to a change in temperature and humidity and an error may occur in the obtained angular velocity, resulting in the calculation of the wrong driving direction, posing a problem for solution.
In addition, as the gyro gain correction coefficient gk is fixed to "1" and the gyro gain once determined is used without being changed in the conventional calculation of the gyro direction, the gyro gain would vary due to the influence of the operational environment (temperature, humidity and so forth) of the gyro, thus lowering the precision of the computed gyro direction.
Even when a gyro which has as small a variation in gyro gain as negligible and is not affected so much by the operational environment is used, data about the 360.degree. turn in the turn correction is obtained from another sensor, so that the acquired data often does not match the data which would be obtained when actual 360.degree. turn is made. In such cases, therefore, there is an error between the determined gyro gain and the gain of the gyro in actual use, and this error lowers the precision of the calculated gyro direction.